// 基本结构
(function(window,undefiend){
    function init(element){
     // 首先 获取所有数据；
     let elements = document.querySelectorAll(element);
     // 其次 遍历数据，将js dom绑定到jq对象上
     for(let i= 0;i<elements.length;i++){
        this[i]=elements[i];
      }
    //   手动添加length属性
      this.length=elements.length
        
    }
    // 去掉new
    let jQuery = function(element){
       return new init(element)
    }
    // 给jq添加静态方法   可以给init添加原型方法
    jQuery.extend=function(object){
        // object={方法名(){},...}
        for(let key in object){
           init.prototype[key]=object[key]
        }
    } 
    //原型添加方法
    init.prototype={
        css(cssAttr,cssVal){
            for(let i = 0;i<this.length;i++){
                // 当对象的键是变量时，用数组语法
                this[i].style[cssAttr]=cssVal
            }
         return this;
        }
    }
       
    // 将Jq函数放到window上，给外部使用
    window.jQuery=Window.$=jQuery
})(window)





